+2009-01-17 Martin Nordholts <martinn@svn.gnome.org>
+
+ * babl/babl-macros.h: New installed header file that contains
+ portability macros.
+
+ * babl/babl.h: Include it and don't define portability macros
+ here.
+
+ * babl/Makefile.am: Add it.
+
2009-01-15 Martin Nordholts <martinn@svn.gnome.org>
* babl/babl.h: Make BablClassType an int again, it doesn't make
--- /dev/null
+/* babl - dynamically extendable universal pixel conversion library.
+ * Copyright (C) 2005-2008, Øyvind Kolås and others.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef _BABL_MACROS_H
+#define _BABL_MACROS_H
+
+#ifndef _BABL_H
+#error this file is only to be included by babl.h
+#endif
+
+#if __GNUC__ >= 4
+#define BABL_ARG_NULL_TERMINATED __attribute__((__sentinel__))
+#else
+#define BABL_ARG_NULL_TERMINATED
+#endif
+
+#endif
#error babl.h included after babl-internal.h
#endif
+#include "babl-macros.h"
+
/* magic number used at the start of all babl objects, used to do
* differentiation in polymorphic functions. (as well as manual
* type check assertions).
*/
void babl_destroy (void);
-#if __GNUC__ >= 4
-#define BABL_ARG_NULL_TERMINATED __attribute__((__sentinel__))
-#else
-#define BABL_ARG_NULL_TERMINATED
-#endif
-
typedef int (*BablEachFunction) (Babl *entry,
void *data);